package com.tte.common.designpattern.builder;

import java.util.ArrayList;
import java.util.List;

/**
 * 整体的餐食对象代表购买的商品，
 * 带有 Item 的 ArrayList 和一个通过结合 Item 来创建不同类型的 Meal 对象的 MealBuilder
 * BuilderPatternDemo 类使用 MealBuilder 来创建一个 Meal。
 */
public class Meal {
    private List<Item> items = new ArrayList<Item>();

    public void addItem(Item item){
        items.add(item);
    }

    public float getCost(){
        float cost = 0.0f;
        for (Item item : items) {
            cost += item.price();
        }
        return cost;
    }

    public void showItems(){
        for (Item item : items) {
            System.out.print("Item : "+item.name());
            System.out.print(", PackingInf : "+item.packing().packWay());
            System.out.println(", Price : "+item.price());
        }
    }
}